#!/usr/bin/perl 
# installedfiles.pl
use warnings;
use strict;

use ExtUtils::Installed;

my $inst = new ExtUtils::Installed;

foreach my $package ($inst->modules) {
   my $valid = $inst->validate($package)?"Failed":"OK";
   my $version = $inst->version($package);
   $version = 'UNDEFINED' unless defined $version;

   print "\n\n--- $package v$version [$valid] ---\n\n";
   if (my @source = $inst->files($package, 'prog')) {
      print "\t", join "\n\t", @source;
   }
   if (my @docs = $inst->files($package, 'doc')) {
      print "\n\n\t", join "\n\t", @docs;
   }
}